package 快排;

/**
 * @Date 2024/10/8 8:59
 * @description: 颜色分类: 快排的核心思想
 * .
 * @Author LittleNight
 */
public class likou75 {

    public void swap(int[] nums, int i, int j) {
        int tmp = nums[i];
        nums[i] = nums[j];
        nums[j] = tmp;
    }
    // 练习
    public void sortColors(int[] nums) {
        int left = -1, right = nums.length, i = 0; //注意left 从-1开始. rigth 从n开始
        while(i < right) {
            if(nums[i] == 0) swap(nums, ++left, i++);
            else if(nums[i] == 1) i++;
            else swap(nums, --right, i); // 这里 i 不能++
        }
        return;
    }

}
